lambda lifting - определение. Что такое lambda lifting
Diclib.com
Словарь ChatGPT
Введите слово или словосочетание на любом языке 👆
Язык:

Перевод и анализ слов искусственным интеллектом ChatGPT

На этой странице Вы можете получить подробный анализ слова или словосочетания, произведенный с помощью лучшей на сегодняшний день технологии искусственного интеллекта:

  • как употребляется слово
  • частота употребления
  • используется оно чаще в устной или письменной речи
  • варианты перевода слова
  • примеры употребления (несколько фраз с переводом)
  • этимология

Что (кто) такое lambda lifting - определение

META-PROCESS THAT DEFINES FUNCTIONS INDEPENDENTLY OF EACH OTHER IN A GLOBAL SCOPE
Lambda Lifting; Lambda lift; Closure conversion; Λ-lifting
Найдено результатов: 253
lambda lifting         
A program transformation to remove free variables. An expression containing a free variable is replaced by a function applied to that variable. E.g. f x = g 3 where g y = y + x x is a free variable of g so it is added as an extra argument: f x = g 3 x where g y x = y + x Functions like this with no free variables are known as supercombinators and are traditionally given upper-case names beginning with "$". This transformation tends to produce many supercombinators of the form f x = g x which can be eliminated by eta reduction and substitution. Changing the order of the parameters may also allow more optimisations. References to global (top-level) constants and functions are not transformed to function parameters though they are technically free variables. A closely related technique is closure conversion. See also Full laziness.
Lambda lifting         
Lambda lifting is a meta-process that restructures a computer program so that functions are defined independently of each other in a global scope. An individual "lift" transforms a local function into a global function.
closure conversion         
<theory> The transformation of continuation passing style code so that the only free variables of functions are names of other functions. See also Lambda lifting. (1994-12-16)
Gnome Lambda         
  • Oberursel U.III, a copy of the 14-cylinder Gnome Lambda-Lambda
  • reason=The [[Sopwith Tabloid]] article says it was produced only with Monospaupe engines. Is Lambda an alternate name for these? Or maybe it is a customization specific only to this replica?}} engine.
ROTARY PISTON AIRCRAFT ENGINE
Gnome Lambda-Lambda; Gnome 7 Lambda; Gnome 14 Lambda-Lambda.; Oberursel U.0; Oberursel U.III; Gnome 14 Lambda-Lambda; Gnome Lambda Lambda; Gnome Λ80 Lambda; Gnome ΛΛ160 Lambda-Lambda; Gnôme 14 Lambda-Lambda; Motorenfabrik Oberursel U.0
The Gnome 7 Lambda was a French designed, seven-cylinder, air-cooled rotary aero engine that was produced under license in Britain and Germany. Powering several World War I-era aircraft types it was claimed to produce from its capacity of although recorded figures are lower.
Lifting equipment         
  • Lifting a heavy timber with a [[block and tackle]] on a tripod.
EQUIPMENT THAT CAN BE USED TO LIFT LOADS
Lifting gear; Lifting devices; Lifting device
Lifting equipment, also known as lifting gear, is a general term for any equipment that can be used to lift and lower loads. Types of lifting equipment includes heavy machinery such as the patient lift, overhead cranes, forklifts, jacks, building cradles, passenger lifts, and can also include smaller accessories such as chains, hooks, and rope.
Lifting Operations and Lifting Equipment Regulations 1998         
UK STATUTORY INSTRUMENT 1998 NO. 2307
Lifting Operations Lifting Equipment Regulations 1998; LOLER
The Lifting Operations and Lifting Equipment Regulations 1998 (LOLER) are set of regulations created under the Health and Safety at Work etc. Act 1974 which came into force in Great Britain on 5 December 1998 and replaced a number of other pieces of legislation which previously covered the use of lifting equipment.
Lambda Nordica         
SWEDISH PERIODICAL
Draft:Lambda Nordica; Lambda Nord; Lambda Nord.
Lambda Nordica is a peer-reviewed, open-access academic journal of LGBTQ studies. The journal is oldest of its kind in the Nordic region, dedicated to interdisciplinary research in lesbian/gay/bi/trans* and queer studies.
beta conversion         
FORMAL SYSTEM IN MATHEMATICAL LOGIC
Lamda calculus; Lambda-calculus; Lambda abstraction; Lambda-definable function; Lambda-definable functions; Lambda calculas; Beta reduction; Alpha conversion; Lambda-recursive function; Lambda programming; Eta reduction; Lambda Calculus; Untyped lambda calculus; Λ-calculus; Alpha equivalence; Eta expansion; Abstraction operator; Alpha reduction; Beta substitution; Beta conversion; Α conversion; Λ calculus; Β-reduction; B-reduction; L-calculus; L calculus; A conversion; Beta-reduction; Λa-calculus; Lanbda-calculus; Lambda kalkül; Alpha renaming; Lambda calculi; Λ-abstraction; AlphaRenaming; Α-conversion; Capture-avoiding substitution; Lambda term; Lamda expression; Alpha-renaming; Alpha-conversion; Eta conversion; Eta-conversion; Η-conversion; Η conversion; Lambda language; Type-free lambda calculus; Typefree lambda calculus; Type free lambda calculus; Eta-reduction; Functional abstraction; Λx; Λy; Λz; Anonymous function abstraction; Lambda-calculi; Lambda-term bound variables; Lambda terms; Alpha equivalent
<theory> A term from lambda-calculus for beta reduction or beta abstraction. (1999-01-15)
Lambda calculus         
FORMAL SYSTEM IN MATHEMATICAL LOGIC
Lamda calculus; Lambda-calculus; Lambda abstraction; Lambda-definable function; Lambda-definable functions; Lambda calculas; Beta reduction; Alpha conversion; Lambda-recursive function; Lambda programming; Eta reduction; Lambda Calculus; Untyped lambda calculus; Λ-calculus; Alpha equivalence; Eta expansion; Abstraction operator; Alpha reduction; Beta substitution; Beta conversion; Α conversion; Λ calculus; Β-reduction; B-reduction; L-calculus; L calculus; A conversion; Beta-reduction; Λa-calculus; Lanbda-calculus; Lambda kalkül; Alpha renaming; Lambda calculi; Λ-abstraction; AlphaRenaming; Α-conversion; Capture-avoiding substitution; Lambda term; Lamda expression; Alpha-renaming; Alpha-conversion; Eta conversion; Eta-conversion; Η-conversion; Η conversion; Lambda language; Type-free lambda calculus; Typefree lambda calculus; Type free lambda calculus; Eta-reduction; Functional abstraction; Λx; Λy; Λz; Anonymous function abstraction; Lambda-calculi; Lambda-term bound variables; Lambda terms; Alpha equivalent
Lambda calculus (also written as λ-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation that can be used to simulate any Turing machine.
alpha conversion         
FORMAL SYSTEM IN MATHEMATICAL LOGIC
Lamda calculus; Lambda-calculus; Lambda abstraction; Lambda-definable function; Lambda-definable functions; Lambda calculas; Beta reduction; Alpha conversion; Lambda-recursive function; Lambda programming; Eta reduction; Lambda Calculus; Untyped lambda calculus; Λ-calculus; Alpha equivalence; Eta expansion; Abstraction operator; Alpha reduction; Beta substitution; Beta conversion; Α conversion; Λ calculus; Β-reduction; B-reduction; L-calculus; L calculus; A conversion; Beta-reduction; Λa-calculus; Lanbda-calculus; Lambda kalkül; Alpha renaming; Lambda calculi; Λ-abstraction; AlphaRenaming; Α-conversion; Capture-avoiding substitution; Lambda term; Lamda expression; Alpha-renaming; Alpha-conversion; Eta conversion; Eta-conversion; Η-conversion; Η conversion; Lambda language; Type-free lambda calculus; Typefree lambda calculus; Type free lambda calculus; Eta-reduction; Functional abstraction; Λx; Λy; Λz; Anonymous function abstraction; Lambda-calculi; Lambda-term bound variables; Lambda terms; Alpha equivalent
<theory> In lambda-calculus and reduction, the renaming of a formal parameter in a lambda abstraction. This does not change the meaning of the abstraction. For example: x . x+1 <--> y . y+1 If the actual argument to a lambda abstraction contains instances of the abstraction's formal parameter then it is necessary to rename the parameter before applying the abstraction to avoid name capture. (1995-05-10)

Википедия

Lambda lifting

Lambda lifting is a meta-process that restructures a computer program so that functions are defined independently of each other in a global scope. An individual "lift" transforms a local function into a global function. It is a two step process, consisting of;

  • Eliminating free variables in the function by adding parameters.
  • Moving functions from a restricted scope to broader or global scope.

The term "lambda lifting" was first introduced by Thomas Johnsson around 1982 and was historically considered as a mechanism for implementing functional programming languages. It is used in conjunction with other techniques in some modern compilers.

Lambda lifting is not the same as closure conversion. It requires all call sites to be adjusted (adding extra arguments to calls) and does not introduce a closure for the lifted lambda expression. In contrast, closure conversion does not require call sites to be adjusted but does introduce a closure for the lambda expression mapping free variables to values.

The technique may be used on individual functions, in code refactoring, to make a function usable outside the scope in which it was written. Lambda lifts may also be repeated, in order to transform the program. Repeated lifts may be used to convert a program written in lambda calculus into a set of recursive functions, without lambdas. This demonstrates the equivalence of programs written in lambda calculus and programs written as functions. However it does not demonstrate the soundness of lambda calculus for deduction, as the eta reduction used in lambda lifting is the step that introduces cardinality problems into the lambda calculus, because it removes the value from the variable, without first checking that there is only one value that satisfies the conditions on the variable (see Curry's paradox).

Lambda lifting is expensive on processing time for the compiler. An efficient implementation of lambda lifting is O ( n 2 ) {\displaystyle O(n^{2})} on processing time for the compiler.

In the untyped lambda calculus, where the basic types are functions, lifting may change the result of beta reduction of a lambda expression. The resulting functions will have the same meaning, in a mathematical sense, but are not regarded as the same function in the untyped lambda calculus. See also intensional versus extensional equality.

The reverse operation to lambda lifting is lambda dropping.

Lambda dropping may make the compilation of programs quicker for the compiler, and may also increase the efficiency of the resulting program, by reducing the number of parameters, and reducing the size of stack frames. However it makes a function harder to re-use. A dropped function is tied to its context, and can only be used in a different context if it is first lifted.